#pragma once

class CMain
{
private:
	HINSTANCE	m_hInst;
	HWND		m_hWnd;
	static const int WND_WIDTH;
	static const int WND_HEIGHT;
	static const string ClassName;
	static const string WindowName;

	void SetClientSize();

public:
	static CMain &GetInstance()
	{
		static CMain Instance;
		return Instance;
	}

	BOOL MakeWindow( HINSTANCE _hInst );
	static LRESULT CALLBACK WinProc( HWND _hWnd, UINT _uMsg, WPARAM _wParam, LPARAM _lParam );


	int GetWidth() const { return WND_WIDTH; }
	int GetHeight()const { return WND_HEIGHT;}
	HWND& GethWnd() { return m_hWnd; }

	void GameLoop();


};

#define MAIN CMain::GetInstance()
